package com.ruoyi.teaching.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
 * 学生成绩详情对象 ya_exam_detail
 *
 * @author ruoyi
 * @date 2024-04-01
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("ya_exam_detail")
public class ExamDetail
{
    private static final long serialVersionUID = 1L;

    /** 节假日ID */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 学员名字 */
    @Excel(name = "学员名字")
    @TableField("student")
    private String student;

    /** 考试记录ID */
    @Excel(name = "考试记录ID")
    @TableField("exam_record_id")
    private Long examRecordId;

    /** 学员ID */
    @Excel(name = "学员ID")
    @TableField("user_id")
    private Long userId;

    /** 机试成绩 */
    @Excel(name = "机试成绩")
    @TableField("computer_score")
    private Integer computerScore;

    /** 笔试成绩 */
    @Excel(name = "笔试成绩")
    @TableField("written_score")
    private Integer writtenScore;

    /** 问题 */
    @Excel(name = "问题")
    @TableField("problem")
    private String problem;

    /** 感受 1优 2良 3中 4差 */
    @Excel(name = "感受 1优 2良 3中 4差")
    @TableField("feeling")
    private Integer feeling;

    /** 措施 */
    @Excel(name = "措施")
    @TableField("measure")
    private String measure;


    public ExamDetail(String student) {
        this.student = student;
    }

    public ExamDetail(String student, Long userId) {
        this.student = student;
        this.userId = userId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("student", getStudent())
            .append("examRecordId", getExamRecordId())
            .append("userId", getUserId())
            .append("computerScore", getComputerScore())
            .append("writtenScore", getWrittenScore())
            .append("problem", getProblem())
            .append("feeling", getFeeling())
            .append("measure", getMeasure())
            .toString();
    }
}
